from copy import deepcopy


def abc():
    print("函数 abc 被调用")
    return "返回了一句话"



# 列表的定义

l1 = []     # 空列表
l2 = [1, 2, 3, "a", "b", "c", True, False, [7, 8, 9], {"name": "张三", "age": 21}, abc]

l3 = list("abcdefg")        # ['a', 'b', 'c', 'd', 'e', 'f', 'g']

print(l2)

# 增加
l2.append("李四")
print(l2)

l2 = l2 + ["王五", "赵六"]
print(l2)

l2.extend(["abc", "def"])
print(l2)


# 查询
print(
    l2[-6]()
)

print(
    l2[8][0:2]
)
print(
    l2.index('a')       # 查找元素下标
)

# 改
l2[-3] = "赵66"
print(l2)


# 删除

del l2[-6]
print(l2)

l2.pop(-2)
print(l2)

l2.pop()
print(l2)


l2.reverse()
print(l2)


# 列表的长度
print(
    "列表的长度为", len(l2)
)

# 最大值
print(
    "列表的最大值", max([3,6,4,8,9,8,4,1,4,1])
)

# 最小值
print(
    "列表的最小值", min([3,6,4,8,9,8,4,1,4,1,0, -1, -2])
)

print()
print()
print()


def is_ou(n):
    if n % 2 == 0:
        return True
    else:
        return False

# 0-9 之间的所有偶数
lis = []
for i in range(11):
    if i % 2 == 0:
        lis.append(i)
print(lis)

lis2 = [x for x in range(11) if is_ou(x)]     # 列表推导式
print(lis2)

lis3 = [x if is_ou(x) else -1 for x in range(11)]     # 列表推导式
print(lis3)


